دسته بندی ها
09:12 1399/07/28

نحوه جوین جداول و نمایش داده های دلخواه از 2 جدول در انتیتی فریم ورک

مشخصات سوال کننده :
کاربر : mojtabahakimian     امتیاز کاربر : 155     رتبه کاربر : 10
دسته بندی : WPF سی شارپ Sql Server Entity Framework

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 5865
1 نظر
mojtabahakimian : dgv_Kalaha.ItemsSource = dbms.Table_Kalaha.ToList(); این کد من برای پر کردن دیتاگرید ویو هستش و توی کد XAML هم ستون واحد Binding شده به Vahed

امتیاز کاربر : 155   رتبه کاربر : 10   تاریخ ثبت : 09:14 1399/07/28
پاسخ دهنده : saedbfd 19:27 1399/07/28

کاری که شما باید انجام بدید این هست که باید 2 جدولی که دارید رو با هم Join کنید و نتیجه رو در DataGrid نمایش بدید. برای این منظور این سوال رو میتونید مطالعه کنید.

جوین (Join) کردن جداول در Entity FrameworkCore

 

اما روش جوین کردن 2 جدول شما رو هم به صورت اختصاصی میگم بهتون. شما 2 جدول دارید.

  • جدول اول لیست کالاها یا جدول Table_Kalaha
  • جدول دوم هم لیست واحدها یا جدول Table_Vahed 

در جدول Table_Kalaha یک فیلد به نام Vahed دارید که در واقع Id واحدها از جدول Table_Vahed هست. بنابراین کلید خارجی در جدول Table_Kalaha هست. خب همه چیز مشخص هست به راحتی میتونید Join رو انجام بدید و نتیجه رو در DataGrid نمایش بدید.

 

var query = from kala in dbms.Table_Kalaha
                         join vahed in dbms.Table_Vahed on Kala.Vahed equals vahed.Code
                         select new { Code = kala.Code, Name = Kala.Name, VahedName = vahed.Names};
dgv_Kalaha.ItemsSource = query.ToList();

 

نتیجه کوئری بالا 3 فیلد به نام های Code و Name و VahedName می باشد که این 3 فیلد را می تونید توی DataGrid خودتون نمایش بدید.

به این پاسخ امتیاز بدهید    1
امتیاز: 1654 رتبه: 1
2 نظر
mojtabahakimian : SELECT * FROM Table_Kalaha Inner JOIN Table_Vaheds ON Table_Kalaha.VAHED = Table_Vaheds.CODE مهندس این کوئری من با SQL Query من هستش بعد ستون واحد ها توی دیتاگریدویو رو هم Binding="{Binding NAMES}" این NAMES ستونی هستش که نام واحد ها رو میاره اما این ستون رو که بایند کردم توی دیتاگرید نشون نمیده

امتیاز کاربر : 155   رتبه کاربر : 10   تاریخ ثبت : 11:36 1399/07/29
saedbfd : با توجه به کوئری که براتون نوشتم شما باید این 3 تا ستون رو در دیتاگرید بایند کنید. Code و Name و VahedName

امتیاز کاربر : 1654   رتبه کاربر : 1   تاریخ ثبت : 05:47 1399/07/29
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود